Method and system for using altitude information in a satellite positioning system

ABSTRACT

A method and apparatus for determining a position of a mobile satellite positioning system (SPS) receiver. In one example of a method, a cell object information is determined; this cell object information comprises at least one of a cell object location or a cell object identification. An altitude is determined from the cell object information which is selected based upon a cell site transmitter which is in wireless communication with a cell based communication system which is coupled to (and typically integrated with) the mobile SPS receiver. The position of the mobile SPS receiver is calculated using the altitude which is determined from the cell object information. In another example of a method, an altitude pseudomeasurement is determined from an estimate of an altitude of the mobile SPS receiver. This estimate of the altitude may be from a cell based information source in a cell based system or may be an average altitude of the area of radio coverage of a wireless basestation in the non-cell based system. The altitude pseudomeasurement may be used as a redundant measurement with fault detection and isolation techniques to determine whether at least one pseudorange has a faulty condition. Alternatively (or in addition), a comparison of the estimated altitude to a calculated altitude determines a condition of at least one pseudorange between an SPS satellite and the mobile SPS receiver. In one embodiment of this example, the position is determined from a position solution algorithm, and if the condition is a first state (not a fault state) the at least one pseudorange is used in the position solution algorithm.

BACKGROUND OF THE INVENTION

The present invention relates to satellite positioning systems which useaugmentation or aiding from information regarding the altitude of asatellite positioning system receiver.

Conventional satellite positioning systems (SPS) such as the U.S. GlobalPositioning System (GPS) use signals from satellites to determine theirposition. Conventional SPS receivers normally determine their positionby computing relative times of arrival of signals transmittedsimultaneously from a multiplicity of GPS satellites which orbit theearth. These satellites transmit, as part of their message, bothsatellite positioning data as well as data on clock timing whichspecifies the position of a satellite at certain times; this data isoften referred to as satellite ephemeris data. Conventional SPSreceivers typically search for and acquire the SPS signals, read theephemeris data for a multiplicity of satellites, determine pseudorangesto these satellites, and compute the location of the SPS receivers fromthe pseudoranges and the ephemeris data from the satellites.

Conventional SPS systems sometimes use altitude aiding to assist in twosituations: a case of bad satellite geometry, or a lack of measurementsfor three dimensional positioning. For most cases, bad satellitegeometry is caused by poor observability in the vertical direction. Forinstance, if the unit vectors to all of the satellites being used in thesolution lie on a cone of arbitrary half-angle, then it is possible toplace a plane on the top of the tips of the unit vectors if the unitvectors only span a two-dimensional space. The error in the thirddirection or dimension, which is perpendicular to the plane, isunobservable; this is referred to as a singularity condition. In urbancanyon environments with tall buildings surrounding the GPS receiverantenna, the only satellites that are visible are those at highelevation angles. These signal conditions are similar to the singularitycondition described herein. Also, large multi-path errors tend to causelarge errors in the vertical direction.

Conventional altitude aiding is based on a pseudomeasurement of thealtitude that can be visualized as a surface of a sphere with its centerat the center of the earth. This sphere has a radius which includes theearth's radius and an altitude with respect to the earth's surface whichis typically defined by an ellipsoid (WGS84 is one of the ellipsoidalmodels). There are numerous techniques which are available to performaltitude aiding, but all techniques rely on an a priori knowledge of thealtitude required to define the surface of a sphere which is a magnitudeof the altitude pseudomeasurement. Typically, an estimated altitude canbe manually supplied by the operator of the GPS receiver or can be setto some preset value, such as the surface of the earth or be set to analtitude from a previous three-dimensional solution.

Prior GPS technology has also used altitude aiding in the case where amobile GPS receiver receives GPS signals but does not compute itsposition, and relies upon a basestation to perform the positioncalculations for it. U.S. Pat. No. 5,225,842 describes such a systemwhich uses altitude aiding in order to allow the use of only three GPSsatellites. The estimated altitude is typically derived from mappinginformation such as a topological or geodetic database. In thisconfiguration, the altitude information of a basestation may also beavailable.

A weakness of this approach is that an initial two-dimensional solutionis typically made before an altitude aiding with a reasonable altitudeestimate can be applied. The altitude can then be extracted from avertical database as a function of latitude and longitude coordinates.

While the foregoing approaches provide certain advantages from the useof altitude information, they do not work well in the case of adistributed processing system where a mobile GPS receiver may be locatedin any position over a relatively large geographical area. Moreover,these prior approaches use altitude information with all availablepseudoranges even if a particular pseudorange is faulty.

SUMMARY OF THE INVENTION

The present invention provides various methods and apparatuses fordetermining a position of a mobile satellite positioning system (SPS)receiver with the use of altitude information. In one example of amethod of the present invention, a cell object information isdetermined. This cell object information comprises at least one of acell object location or a cell object identification. In one example,the cell object may be a cell site and the identification may be anidentifier of the cell site and the location may be the latitude andlongitude of the cell site. An altitude is determined from the cellobject information which is selected based upon a cell site transmitterwhich is in wireless communication with a cell based communicationsystem which is coupled to (and typically integrated with) the mobileSPS receiver. That is, the altitude is determined from a cell objectinformation which is associated with the cell site transmitter which isin communication with the communication system of the mobile SPSreceiver. The position of the mobile SPS receiver is calculated usingthe altitude which is determined from the cell object information.

In another example of a method according to the present invention, analtitude pseudomeasurement is determined, and this pseudomeasurementuses an estimate of an altitude of the mobile SPS receiver. Thisestimate of the altitude may be derived from a cell based informationsource in a cell based communication system or may be an averagealtitude or other mathematical representation of altitude or altitudesof an area of coverage of a wireless basestation in a non-cell basedsystem. In one implementation, a comparison of the estimate of thealtitude to an altitude that is calculated from pseudoranges to SPSsatellites (or from pseudoranges and the altitude pseudomeasurement)determines the condition of at least one pseudorange between an SPSsatellite and the mobile SPS receiver. In another implementation, thealtitude pseudomeasurement may be used as a redundant measurement (withpseudoranges to SPS satellites) and fault detection and isolationtechniques may be employed using the redundant measurement to determinethe condition (e.g. faulty or non-faulty) of at least one of thepseudoranges or a navigation solution. In one embodiment of thisexample, the position is determined from a position solution algorithm,and if the condition of a pseudorange is in a first state, such as anon-fault state, the at least one pseudorange is used in the positionsolution algorithm. A re-computation of a navigation solution may beperformed using only non-faulty pseudoranges (after faulty pseudorangeshave been identified and excluded from a recomputation of a navigationsolution).

Various mobile SPS receivers and basestations are also described herein.Various other aspects and embodiments of the present invention arefurther described below.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example and notlimitation in the figures of the accompanying drawings in which likereferences indicate similar elements.

FIG. 1 illustrates a cell based communication system having a pluralityof cells each of which is serviced by a cell site, and each of which iscoupled to a cell based switching center, which is sometimes referred toas a mobile switching center.

FIG. 2 illustrates an implementation of a location server systemaccording to one embodiment of the invention.

FIG. 3A illustrates an example of a combined SPS receiver andcommunication system according to one embodiment of the presentinvention.

FIG. 3B illustrates an example of an SPS reference station according toone embodiment of the present invention.

FIG. 4 illustrates an example of a cell based information source whichmay be used to determine an estimated altitude of a mobile SPS receiver.

FIG. 5 illustrates a flowchart for one method which uses altitude aidingaccording to the present invention. FIGS. 5A and 5B show two otherflowcharts which represent methods for using altitude aiding accordingto the present invention.

FIG. 6 is a flowchart showing other methods for using altitude aidingaccording to the present invention.

DETAILED DESCRIPTION

The present invention provides various methods and apparatuses for usingaltitude aiding with satellite positioning systems. The followingdescription and drawings are illustrative of the invention and are notto be construed as limiting the innovation. Numerous specific detailsare described to provide a thorough understanding of the presentinvention. However, in certain instances, well known or conventionaldetails are not described in order to not unnecessarily obscure thepresent invention in detail.

Before describing various details with respect to the use of altitudeaiding information, it will be useful to describe the context in whichone aspect of the present invention is used. Accordingly, a preliminarydiscussion which refers to FIGS. 1, 2, 3A, and 3B will be providedbefore discussing the use of altitude aiding in a cell basedcommunication system.

FIG. 1 shows an example of a cell based communication system 10 whichincludes a plurality of cell sites, each of which is designed to servicea particular geographical region or location. Examples of such cellularbased or cell based communication systems are well known in the art,such as the cell based telephone systems. The cell based communicationsystem 10 includes two cells 12 and 14, both of which are defined to bewithin a cellular service area 11. In addition, the system 10 includescells 18 and 20. It will be appreciated that a plurality of other cellswith corresponding cell sites and/or cellular service areas may also beincluded in the system 10 coupled to one or more cellular switchingcenters, such as the cellular switching center 24 and the cellularswitching center 24b.

Within each cell, such as the cell 12, there is a wireless cell orcellular site such as cell site 13 which includes an antenna 13a whichis designed to communicate through a wireless communication medium witha communication receiver which may be combined with a mobile GPSreceiver such as the receiver 16 shown in FIG. 1. An example of such acombined system having a GPS receiver and a communication system isshown in FIG. 3A and may include both a GPS antenna 77 and acommunication system antenna 79.

Each cell site is coupled to a cellular switching center. In FIG. 1,cell sites 13, 15, and 19 are coupled to switching center 24 throughconnections 13b, 15b and 19b respectively and cell site 21 is coupled toa different switching center 24b through connection 21b. Theseconnections are typically wire line connections between the respectivecell site and the cellular switching centers 24 and 24b. Each cell siteincludes an antenna for communicating with communication systemsserviced by the cell site. In one example, the cell site may be acellular telephone cell site which communicates with mobile cellulartelephones in the area serviced by the cell site. It will be appreciatedthat a communication system within one cell, such as receiver 22 shownin cell 4, may in fact communicate with cell site 19 in cell 18 due tosignal blockage (or other reasons why cell site 21 cannot communicatewith the receiver 22). It is also true that multiple cell sites may becommunicating data (but usually not voice) with a mobile GPS receiverwhich includes a communication system.

In a typical embodiment of the present invention, the mobile GPSreceiver 16 includes a cell based communication system which isintegrated with the GPS receiver such that both the GPS receiver and thecommunication system are enclosed in the same housing. One example ofthis is a cellular telephone having an integrated GPS receiver whichshares common circuitry with the cellular telephone transceiver. Whenthis combined system is used for cellular telephone communications,transmissions occur between the receiver 16 and the cell site 13.Transmissions from the receiver 16 to the cell site 13 are thenpropagated over the connection 13b to the cellular switching center 24and then to either another cellular telephone in a cell serviced by thecellular switching center 24 or through a connection 30 (typicallywired) to another telephone through the land-based telephonesystem/network 28. It will be appreciated that the term wired includesfiber optic and other non wireless connections such as copper cabling,etc. Transmissions from the other telephone which is communicating withthe receiver 16 are conveyed from the cellular switching center 24through the connection 13b and the cell site 13 back to the receiver 16in the conventional manner.

The remote data processing system 26 (which may be referred to in someembodiments as a SPS server or a location server) is included in thesystem 10 and is in one embodiment used to determine the position of amobile SPS receiver (e.g. receiver 16) using SPS signals received by theSPS receiver. The SPS server 26 may be coupled to the land-basedtelephone system/network 28 through a connection 27, and it may also beoptionally coupled to the cellular switching center 24 through theconnection 25 (which may be a communication network) and also optionallycoupled to center 24b through the connection 25b (which may be the sameor a different communication network as connection 25). It will beappreciated that connections 25 and 27 are typically wired connections,although they may be wireless. Also shown as an optional component ofthe system 10 is a query terminal 29 which may consist of anothercomputer system which is coupled through the network 28 to the SPSserver 26. This query terminal 29 may send a request, for the positionof a particular SPS receiver in one of the cells, to the SPS server 26which then initiates a conversation with a particular SPS receiverthrough the cellular switching center in order to determine the positionof the GPS receiver and report that position back to the query terminal29. In another embodiment, a position determination for a GPS receivermay be initiated by a user of a mobile GPS receiver; for example, theuser of the mobile GPS receiver may press 911 on the cell phone toindicate an emergency situation at the location of the mobile GPSreceiver and this may initiate a location process in the mannerdescribed herein. In another embodiment of the present invention, eachcell site may include a GPS location server which communicates data toand from a mobile GPS receiver through the cell site. The presentinvention may also be employed with different communicationarchitectures such as point-to-point architectures which use non cellbased systems.

It should be noted that a cellular based or cell based communicationsystem is a communication system which has more than one transmitter,each of which serves a different geographical area, which is predefinedat any instant in time. Typically, each transmitter is a wirelesstransmitter which serves a cell which has a geographical radius of lessthan 20 miles, although the area covered depends on the particularcellular system. There are numerous types of cellular communicationsystems, such as cellular telephones, PCS (personal communicationsystem), SMR (specialized mobile radio), one-way and two-way pagersystems, RAM, ARDIS, and wireless packet data systems. Typically, thepredefined geographical areas are referred to as cells and a pluralityof cells are grouped together into a cellular service area, such as thecellular service area 11 shown in FIG. 1, and these pluralities of cellsare coupled to one or more cellular switching centers which provideconnections to land-based telephone systems and/or networks. Servicearea are often used for billing purposes. Hence, it may be the case thatcells in more than one service area are connected to one switchingcenter. For example, in FIG. 1, cells 1 and 2 are in service area 11 andcell 3 is in service area 13, but all three are connected to switchingcenter 24. Alternatively, it is sometimes the case that cells within oneservice area are connected to different switching centers, especially indense population areas. In general, a service area is defined as acollection of cells within close geographical proximity to one another.Another class of cellular systems that fits the above description issatellite based, where the cellular basestations or cell sites aresatellites that typically orbit the earth. In these systems, the cellsectors and service areas move as a function of time. Examples of suchsystems include Iridium, Globalstar, Orbcomm, and Odyssey.

FIG. 2 shows an example of a SPS server 50 which may be used as the SPSserver 26 in FIG. 1. The SPS server 50 of FIG. 2 includes a dataprocessing unit 51 which may be a fault-tolerant digital computersystem. The SPS server 50 also includes a modem or other communicationinterface 52 and a modem or other communication interface 53 and a modemor other communication interface 54. These communication interfacesprovide connectivity for the exchange of information to and from thelocation server shown in FIG. 2 between three different networks, whichare shown as networks 60, 62, and 64. The network 60 includes thecellular switching center or centers and/or the land-based phone systemswitches or the cell sites. Thus the network 60 may be considered toinclude the cellular switching centers 24 and 24b and the land-basedtelephone system/network 28 and the cellular service area 11 as well ascells 18 and 20. The network 64 may be considered to include the queryterminal 29 of FIG. 1 or the "PSAP," which is the Public SafetyAnswering Point which is typically the control center which answers 911emergency telephone calls. In the case of the query terminal 29, thisterminal may be used to query the server 26 in order to obtain aposition information from a designated mobile SPS receiver located inthe various cells of the cell based communication system. In thisinstance, the location operation is initiated by someone other than theuser of the mobile GPS receiver. In the case of a 911 telephone callfrom the mobile GPS receiver which includes a cellular telephone, thelocation process is initiated by the user of the cellular telephone. Thenetwork 62, which represents the GPS reference network 32 of FIG. 1, isa network of GPS receivers which are GPS reference receivers designed toprovide differential GPS correction information and also to provide GPSsignal data including the satellite ephemeris data (typically as part ofthe entire raw satellite navigation message) to the data processingunit. When the server 50 serves a very large geographical area, a localoptional GPS receiver, such as optional GPS receiver 56, may not be ableto observe all GPS satellites that are in view of mobile SPS receiversthroughout this area. Accordingly, the network 62 collects and providessatellite ephemeris data (typically as part of the entire raw satellitenavigation message) and differential GPS correction data applicable overa wide area in accordance with the present invention.

As shown in FIG. 2, a mass storage device 55 is coupled to the dataprocessing unit 51. Typically, the mass storage 55 will include storagefor data and software for performing the GPS position calculations afterreceiving pseudoranges from the mobile SPS receivers, such as a receiver16 of FIG. 1. These pseudoranges are normally received through the cellsite and cellular switching center and the modem or other interface 53.The mass storage device 55 also includes software, at least in oneembodiment, which is used to receive and use the satellite ephemerisdata provided by the GPS reference network 32 through the modem or otherinterface 54. The mass storage device 55 also typically includes adatabase which stores cell object information, such as cell siteidentifiers, cell site geographic location and corresponding altitudeswhich are typically the altitude(s) associated with a cell sitegeographic location and hence estimated altitudes for a mobile SPSreceiver which is in radio communication with a particular cell site.This cell object information and corresponding altitudes is a cell basedinformation source, an example of which is shown in FIG. 4 and isdescribed further below.

In a typical embodiment of the present invention, the optional GPSreceiver 56 is not necessary as the GPS reference network 32 of FIG. 1(shown as network 62 of FIG. 2) provides the differential GPSinformation, GPS measurements as well as providing the raw satellitedata messages from the satellites in view of the various referencereceivers in the GPS reference network. It will be appreciated that thesatellite ephemeris data obtained from the network through the modem orother interface 54 may be normally used in a conventional manner withthe pseudoranges obtained from the mobile GPS receiver in order tocompute the position information for the mobile GPS receiver. Theinterfaces 52, 53, and 54 may each be a modem or other suitablecommunication interface for coupling the data processing unit to othercomputer systems, as in the case of network 64, and to cellular basedcommunication systems, as in the case of network 60, and to transmittingdevices, such as computer systems in the network 62. In one embodiment,it will be appreciated that the network 62 includes a dispersedcollection of GPS reference receivers dispersed over a wide geographicalregion. In some embodiments, the differential GPS correctioninformation, obtained from a receiver 56 near the cell site or cellularservice area which is communicating with the mobile GPS receiver throughthe cellular based communication system, will provide differential GPScorrection information which is appropriate for the approximate locationof the mobile GPS receiver. In other cases, differential correctionsfrom the network 62 may be combined to compute a differential correctionappropriate to the location of the mobile SPS receiver.

FIG. 3A shows a generalized combined system which includes a GPSreceiver and a communication system transceiver. In one example, thecommunication system transceiver is a cellular telephone. The system 75includes a GPS receiver 76 having a GPS antenna 77 and a communicationtransceiver 78 having a communication antenna 79. The GPS receiver 76 iscoupled to the communication transceiver 78 through the connection 80shown in FIG. 3A. In one mode of operation, the communication systemtransceiver 78 receives approximate Doppler information through theantenna 79 and provides this approximate Doppler information over thelink 80 to the GPS receiver 76 which performs the pseudorangedetermination by receiving the GPS signals from the GPS satellitesthrough the GPS antenna 77. This pseudorange is then transmitted to alocation server, such as the GPS server 26 shown in FIG. 1 through thecommunication system transceiver 78. Typically the communication systemtransceiver 78 sends a signal through the antenna 79 to a cell sitewhich then transfers this information back to the GPS server, such asGPS server 26 of FIG. 1. Examples of various embodiments for the system75 are known in the art. For example, U.S. Pat. No. 5,663,734 describesan example of a combined GPS receiver and communication system whichutilizes an improved GPS receiver system. Another example of a combinedGPS and communication system has been described in co-pendingapplication Ser. No. 08/652,833, which was filed May 23, 1996. Thesystem 75 of FIG. 3A, as well as numerous alternative communicationsystems having SPS receivers, may be employed with the methods of thepresent invention to operate with the GPS reference network of thepresent invention.

FIG. 3B shows one embodiment for a GPS reference station. It will beappreciated that each reference station may be constructed in this wayand coupled to the communication network or medium. Typically, each GPSreference station, such as GPS reference station 90 of FIG. 3B, mayinclude a dual frequency GPS reference receiver 92 which is coupled to aGPS antenna 91 which receives GPS signals from GPS satellites in view ofthe antenna 91. Alternatively, a GPS reference receiver may be a singlefrequency receiver, depending on the accuracy of correction required tocover an area of interest. GPS reference receivers are well known in theart. The GPS reference receiver 92, according to one embodiment of thepresent invention, provides at least two types of information as outputsfrom the receiver 92. Pseudorange outputs 93 are provided to a processorand network interface 95, and these pseudorange outputs are used tocompute pseudorange differential corrections in the conventional mannerfor those satellites in view of the GPS antenna 91. The processor andnetwork interface 95 may be a conventional digital computer system whichhas interfaces for receiving data from a GPS reference receiver as iswell known in the art. The processor 95 will typically include softwaredesigned to process the pseudorange data to determine the appropriatepseudorange correction for each satellite in view of the GPS antenna 91.These pseudorange corrections are then transmitted through the networkinterface to the communication network or medium 96 to which other GPSreference stations are typically also coupled. In another example of theinvention, pseudorange data from the reference receiver is passedthrough the network 96 to a central location such as a GPS server 26where differential corrections are computed. In yet another example,output 93 contains differential corrections generated by referencereceiver 92. The GPS reference receiver 92 also provides a satelliteephemeris data output 94. This data is provided to the processor andnetwork interface 95 which then transmits this data onto thecommunication network 96.

The satellite ephemeris data output 94 provides typically at least partof the entire raw 50 baud navigation binary data encoded in the actualGPS signals received from each GPS satellite. The satellite ephemerisdata is part of the navigation message which is broadcast as the 50 bitper second data stream in the GPS signals from the GPS satellites and isdescribed in great detail in the GPS ICD-200 document. The processor andnetwork interface 95 receives this satellite ephemeris data output 94and transmits it in real time or near real time to the communicationnetwork 96. This satellite ephemeris data is transmitted into thecommunication network and is received through the network at variouslocation servers according to aspects of the present invention.

In certain embodiments of the present invention, only certain segmentsof the navigation message, such as the satellite ephemeris data may besent to location servers in order to lower the bandwidth requirementsfor the network interfaces and for the communication network. Typically,also, this data may not need to be provided continuously. For example,only the first three frames which contain satellite clock and ephemerisinformation rather than all 5 frames together may be transmitted on aregular basis into the communication network 96. It will be appreciatedthat in one embodiment of the present invention, the location server mayreceive the entire navigation message which is transmitted from one ormore GPS reference receivers into the network in real time or near realtime in order to perform a method for measuring time related tosatellite data messages, such as the method described in co-pending U.S.patent application Ser. No. 08/794,649, which was filed Feb. 3, 1997, byNorman F. Krasner. As used herein, the term "satellite ephemeris data"includes data which is only a portion of the satellite navigationmessage (e.g. 50 baud message) transmitted by a GPS satellite or atleast a mathematical representation of this satellite ephemeris data.For example, the term satellite ephemeris data refers to at least arepresentation of a portion of the 50 baud data message encoded into theGPS signal transmitted from a GPS satellite. It will be also understoodthat the GPS reference receiver 92 decoded the different GPS signalsfrom the different GPS satellites in view of the reference receiver 92in order to provide the binary data output 94 which contains thesatellite ephemeris data.

FIG. 4 shows an example of a cell based information source which in oneembodiment may be maintained at a data processing station such as theGPS server 26 shown in FIG. 1. Alternatively, this information sourcemay be maintained at a cellular switching center such as the cellularswitching center 24 of FIG. 1 or at each cell site, such as cell site 13shown in FIG. 1. Typically, however, this information is maintained androutinely updated at the location server which is coupled to thecellular switching center. The information source may maintain the datain various formats, and it will be appreciated that the format shown inFIG. 4 illustrates only one example of a format. Typically, eachestimated altitude, such as estimated altitude 203, will include acorresponding location such as a cell site location or identificationfor a cell site or service area. The information in the cell basedinformation source 201 may be maintained in a database which includescell object information, such as an identification of cell service areasor cell sites shown in columns 208 and 210 respectively and may alsoinclude cell site location such as the information shown in column 212.In the case of each estimated altitude, there is typically at least oneof a cell site location or a cell site identification. It will beappreciated that each estimated altitude may be an average altitude ofthe geographical region covered by the radio signal coverage from a cellsite. Other mathematical representations of the altitudes around thecell site may be used. It may be useful to use altitudes around the cellsite rather than the altitude of the cell site particularly where thecell site's position may not be representative of the altitudes at whichmobile SPS receivers can be found in the particular area.

The use of the cell based information source 201 will now be describedin conjunction with FIG. 5 which shows an example of a method of thepresent invention. In this following description, it will be assumedthat the mobile SPS receiver will receive SPS signals and determinepseudoranges from those signals but will not complete a positionsolution calculation at the mobile receiver. Rather, the mobile receiverwill transmit these pseudoranges to a particular cell site with which itis in radio communication and this cell site will forward thepseudoranges to a mobile switching center which will in turn forward thepseudoranges to a location server, such as the GPS server 26 of FIG. 1.This GPS server will then complete the position calculation usingaltitude aiding information according to an example of the presentinvention. In this particular example, a cell object information isdetermined in step 301. This may occur by the GPS server receiving acell site identifier or a location for the cell site which is inwireless communication with a mobile cell based communication systemwhich is coupled to the mobile SPS receiver, such as the receiver shownin FIG. 3A. For example, the cell site may forward its identifierinformation or may forward its location with the pseudorange informationfrom the mobile SPS receiver to the GPS server. In step 303, the GPSserver determines an estimated altitude for the mobile SPS receiver fromthe cell object information. In one example, the SPS server will performa database lookup operation to obtain the estimated altitude by usingthe cell object information as an index into the database. This databasemay be maintained in the mass storage 55 shown in FIG. 2. If thelocation of the cell site is provided by providing a latitude and alongitude, the server may use this latitude and longitude to look up thealtitude of the earth's surface at this point. Alternatively, in thecase where a cell site identifier is provided such as a cell site numberor other identification, then this cell object information will be usedto obtain an estimated altitude; estimated altitude 205 is an example ofsuch a situation where the cell site number B1 is used to identifyestimated altitude 205. In step 305, the GPS server uses the estimatedaltitude to determine the position of the mobile GPS receiver. There areknown ways in which the altitude may be used to augment or aid theposition solution calculation.

FIGS. 5A and 5B show methods in which an estimated altitude may be usedin accordance with the present invention. The method of FIG. 5A beginsat 311 in which cell object information is determined. This informationis then used in 313 of FIG. 5A to determine an initial estimatedgeographic location (which may be specified as a latitude, longitude andaltitude) for the mobile SPS receiver based upon the cell objectinformation. In one example of this method, the cell object informationis used as an index to look up in a database the estimated locationwhich is associated with the cell object information. This estimatedlocation is then used in 315 of FIG. 5A to calculate a position (e.g. acalculated latitude and longitude) of the mobile SPS receiver. Thiscalculated latitude and longitude is then used in 317 of FIG. 5A todetermine an estimated altitude; this may be done by performing adatabase look up operation on a second database to obtain the estimatedaltitude from the calculated latitude and longitude. In this case, thesecond database is similar to the database shown in FIG. 4 except thatthe second database used in FIG. 5A is more extensive in providingaltitudes for many more possible combinations of latitudes andlongitudes; while this second database used in FIG. 5A may not have analtitude for all possible combinations of latitudes and longitudes,interpolation logic may be used to determine an altitude throughinterpolation among altitudes in the database at latitudes andlongitudes which are close to the calculated latitude and longitude. Thealtitude obtained in 317 of FIG. 5A may be used in 319 to again computea position (effectively a refined position calculation).

The second database may be improved over time as it is used by addinglatitude/longitude/altitude combinations each time that a computedposition is determined. That is, by using the system of the inventionmany times (e.g. each time "911" is pressed by a user of a cell phone),entries to the database can be added, and any altitude conflicts at agiven latitude and longitude may be averaged (or flagged to be checked"manually" by an accurate GPS receiver reading). This will produce arobust three-dimensional database of the earth's surface over time. FIG.5B shows an example of this method of adding entries to the seconddatabase. In step 325, the initial estimate of the location of a mobileSPS receiver is used to calculate a position of the mobile SPS receiver.The calculated position (latitude, longitude and altitude combination)is then used to update the second database (referred to as an altitudedatabase in step 329).

While the foregoing description assumed a particular architecture, itwill be appreciated that the present invention may be used in numerousarchitectures and in numerous other examples. For example, the altitudeinformation may be stored at a cell site and transmitted to the locationserver or GPS server along with the pseudorange information from amobile SPS receiver. This would eliminate the requirement that each GPSserver maintain a database, although it may still be advantageous for aserver to do so in case there are cell sites which the servercommunicates with and which do not have their own altitude information.In another alternative, the altitude information may be transmitted tothe mobile SPS receiver which determines its own position in aconventional manner by acquiring and tracking SPS satellites,determining pseudoranges, reading satellite ephemeris information fromthe SPS satellites and determining its position. In yet anotheralternative, rather than transmitting the altitude to the mobile unit, acell object information, such as a cell site identifier or cell sitelocation may be transmitted to the mobile SPS receiver which maintainsits own database showing an estimated altitude for a given cell objectinformation. In this manner, the mobile SPS receiver can determine itsown position and also perform altitude aiding autonomously. In yetanother alternative embodiment, the mobile SPS receiver may merelycollect the SPS signals and digitize them and then transmit thisdigitization of the SPS signals to the GPS server which determinespseudoranges from this digitized information and which completes theposition calculation. In yet another alternative embodiment, satelliteephemeris data may be sent from a source, such as the SPS server,through the cell site to the mobile SPS receiver, and this satelliteephemeris data is used in conjunction with pseudoranges determined bythe mobile SPS receiver to provide a position solution at the mobile SPSreceiver. An example of this architecture is described in U.S. Pat. No.5,365,450.

Another aspect of the present invention will be described now byreferring to FIG. 6 which shows a method according to this aspect. Themethod shown in FIG. 6 relates to fault detection and isolation in a SPSreceiver. While various fault detection and isolation (FDI) techniquesare known in the art (see for example Chapter 5 and Chapter 8 of GlobalPositioning System: Theory and Applications, Volume 2, B. W. Parkinsonand J. J. Spilker, Jr., editors, American Institute of Aeronautics andAstronautics, Inc., 1996; and also see Navigation System IntegrityMonitoring Using Redundant Measurements by Mark A. Sturza, NAVIGATION:Journal of the Institute of Navigation, Vol. 35, No. 4, Winter 1988-89,p. 483 et. seq.), these techniques have not utilized altitude aiding ina way to identify the presence of a faulty satellite pseudorange. Once afaulty satellite pseudorange is identified, it may be excluded from are-computed navigation solution to improve the final positiondetermination.

The method of FIG. 6 may begin in step 351 in which pseudoranges toseveral SPS satellites are determined. In step 353, an altitudepseudomeasurement is determined. This altitude pseudomeasurement may beconsidered a pseudorange to a satellite at the center of the earth andmay be determined in the conventional manner of determiningpseudomeasurements for altitude aiding which are utilized in the priorart. Thus, for example, this altitude pseudomeasurement can bevisualized as a radius, which includes the earth's radius from theearth's center to a point above the earth's assumed spherical surface atan estimated altitude with respect to the earth's surface, defined by anellipsoid. The estimated altitude may be derived as shown in FIG. 5(steps 301 and 303). In step 355, an altitude for the mobile SPSreceiver is calculated and this calculated altitude is compared to theestimated altitude. The calculated altitude may be obtained from anavigation solution based on the pseudoranges determined in step 351.The difference between these two values, if large enough, will indicatea possible faulty satellite pseudorange or possible faulty navigationalsolution, which may exist in the case of large multipath errors whichcause large errors in a vertical direction as often occurs in an urbancanyon situation. In step 357, the condition of at least one pseudorangemay be determined based upon this comparison. If the comparison shows asmall difference between the estimated altitude and the calculatedaltitude then the condition of the pseudoranges may be such that theyare not at fault. On the other hand, if the difference between theestimated altitude and the calculated altitude is sufficiently large(e.g. the difference exceeds a threshold), then at least one of thepseudoranges (and/or a navigation solution) may be faulty.

Also shown in step 357 is an alternative method which does not rely onthe comparison between an estimated altitude and a calculated altitude.This alternative method may be performed instead of the comparison or inaddition to the comparison. This alternative method uses the altitudepseudomeasurement (from step 353) as a redundant measurement (redundantto the pseudoranges from step 351) and uses FDI techniques which useredundant measurements to detect whether a faulty pseudorange (or faultynavigation solution) exists and to identify at least one faultypseudorange if one exists. These FDI techniques are described in theliterature; see, for example, Sturza, "Navigation System IntegrityMonitoring Using Redundant Measurements" referred to above. Afteridentifying the faulty pseudorange(s), they may be excluded from are-computed navigation solution. It will be appreciated that a cellularpseudorange (described in co-pending U.S. patent application Ser. No.09/064,673, filed Apr. 22, 1998 and entitled "Satellite PositioningSystem Augmentation with Wireless Communication Signals") may be used asa redundant measurement with these FDI techniques. An example of acellular pseudorange is a time difference of arrival of a communicationradio frequency signal in a CDMA or other cellular (cell based)communication system; the cellular pseudorange typically represents atime of travel of a communication signal between a cell site at a knownlocation and the mobile SPS receiver which includes a cell basedcommunication system.

The methods of FIG. 6 may identify a particular pseudorange to aparticular satellite as "bad" even though the SPS signals from theparticular satellite have a high signal-to-noise ratio (SNR). In thiscase, the invention may reject this identification and continue to usethe FDI techniques to find another faulty pseudorange.

The methods of FIG. 6 may be used in a non-cell based system in which asingle basestation is in point-to-point radio communication with amobile SPS receiver. In this case, the estimated altitude may be anaverage altitude of the geographical region covered by radio signals toor from the basestation. In this particular example, no cell objectinformation needs to be transmitted through a network. In anotheralternative, the method of FIG. 6 may be used in a cell basedcommunication system in which a cell object information is transmittedfrom components in a network and ultimately used as an index to adatabase to derive an estimated altitude.

While the foregoing description has generally assumed a systemarchitecture in which a mobile SPS receiver determines pseudoranges andtransmits these pseudoranges to a remotely located SPS server, it willbe understood that the present invention is also applicable to othersystem architectures. For example, the present invention may be employedin a system in which a mobile SPS receiver transmits digitized SPSsignals (with a time stamp showing time of reception) to a remotelylocated SPS server (without computing pseudoranges to SPS satellites),and the remotely located SPS server determines an estimated altitude anddetermines a position solution (which may also be examined with FDItechniques as described herein). In another example, the presentinvention may be employed in a system in which a mobile SPS receiverdetermines its own position with or without assistance from a remotelylocated SPS server. Without such assistance, the mobile SPS receiver mayperform FDI techniques based on an estimated altitude with the aid of analtitude estimate provided by a user or transmitted to the mobile SPSreceiver from a cell site (the mobile SPS receiver may determine a cellsite identification from its cell based communications with the cellsite and look up in its own database an estimated altitude whichcorresponds to the cell site). With such assistance, the mobile SPSreceiver may determine its own position by receiving satellite ephemerisdata and/or Doppler information and/or satellite almanac from an SPSserver (e.g. transmitted from a cell site to the mobile SPS receiver)and may also receive and use an altitude estimate from an SPS server; inthis case, the mobile SPS receiver may determine its position (afterdetermining satellite pseudoranges) and may perform FDI techniques onthe position solution using the altitude estimate.

Although the methods and apparatus of the present invention have beendescribed with reference to GPS satellites, it will be appreciated thatthe teachings are equally applicable to positioning systems whichutilize pseudolites or a combination of satellites and pseudolites.Pseudolites are ground based transmitters which broadcast a PN code(similar to a GPS signal) which may be modulated on an L-band carriersignal, generally synchronized with GPS time. Each transmitter may beassigned a unique PN code so as to permit identification by a remotereceiver. Pseudolites are useful in situations where GPS signals from anorbiting satellite might be unavailable, such as tunnels, mines,buildings or other enclosed areas. The term "satellite", as used herein,is intended to include pseudolite or equivalents of pseudolites, and theterm GPS signals, as used herein, is intended to include GPS-likesignals from pseudolites or equivalents of pseudolites.

In the preceding discussion the invention has been described withreference to application upon the United States Global PositioningSatellite (GPS) system. It should be evident, however, that thesemethods are equally applicable to similar satellite positioning systems,and in, particular, the Russian Glonass system. The Glonass systemprimarily differs from GPS system in that the emissions from differentsatellites are differentiated from one another by utilizing slightlydifferent carrier frequencies, rather than utilizing differentpseudorandom codes. The term "GPS" used herein includes such alternativesatellite positioning systems, including the Russian Glonass system.

In the foregoing specification, the invention has been described withreference to specific exemplary embodiments thereof. It will, however,be evident that various modifications and changes may be made theretowithout departing from the broader spirit and scope of the invention asset forth in the appended claims. The specification and drawings are,accordingly, to be regarded in an illustrative rather than a restrictivesense.

What is claimed is:
 1. A method for determining a position of a mobilesatellite positioning system (SPS) receiver having a cell basedcommunication receiver, said method comprising:determining a cell objectinformation, said cell object information comprising at least one of acell object location or a cell object identification; determining analtitude from said cell object information, wherein said cell objectinformation is selected based upon a cell site transmitter which is inwireless communication with said cell based communication receiver;calculating a position of said mobile SPS receiver using said altitude.2. A method as in claim 1 wherein said cell object information isinformation representing at least one of a location or an identificationof said cell site transmitter.
 3. A method as in claim 2 wherein saidaltitude is an approximate altitude of said cell site transmitter.
 4. Amethod as in claim 2 wherein said altitude is a mathematicalrepresentation of altitudes in the geographical vicinity of said cellsite transmitter.
 5. A method as in claim 2 wherein said cell objectinformation and said altitude are stored in a computer readable storagemedium.
 6. A method as in claim 5 further comprising:transmitting atleast one pseudorange from said mobile SPS receiver to a remoteprocessing station.
 7. A method as in claim 6 wherein said transmittingis through a receiver at said cell site transmitter and wherein saidremote processing station is coupled to a cellular switching centerwhich is coupled to said cell site transmitter and wherein said remoteprocessing system determines said altitude and calculates said positionusing said altitude.
 8. A method as in claim 2 furthercomprising:transmitting said altitude to said mobile SPS receiver, andwherein said mobile SPS receiver calculates said position using saidaltitude.
 9. A method as in claim 2 further comprising:transmitting saidcell object information to said mobile SPS receiver, and wherein saidmobile SPS receiver determines said altitude.
 10. A method as in claim 7further comprising:receiving, at said remote processing system,satellite ephemeris data.
 11. A computer readable medium containingexecutable computer program instructions which, when executed by a dataprocessing system, cause said data processing system to perform a methodcomprising:determining a cell object information, said cell objectinformation comprising at least one of a cell object location or a cellobject identification; determining an altitude from said cell objectinformation, wherein said cell object information is selected based upona cell site transmitter which is in wireless communication with a cellbased communication receiver of a mobile satellite positioning system(SPS) receiver; calculating a position of said mobile SPS receiver usingsaid altitude.
 12. A computer readable medium as in claim 11 whereinsaid cell object information is information representing at least one ofa location or an identification of said cell site transmitter.
 13. Acomputer readable medium as in claim 12 wherein said altitude is anapproximate altitude of said cell site transmitter.
 14. A computerreadable medium as in claim 12 wherein said altitude is a mathematicalrepresentation of altitudes in the geographical vicinity of said cellsite transmitter.
 15. A computer readable medium as in claim 12 whereinsaid cell object information and said altitude are stored in a computerreadable storage medium.
 16. A computer readable medium as in claim 15wherein said method further comprises:transmitting at least onepseudorange from said mobile SPS receiver to a remote processingstation.
 17. A computer readable medium as in claim 16 wherein saidtransmitting is through a receiver at said cell site transmitter andwherein said remote processing station is coupled to a cellularswitching center which is coupled to said cell site transmitter andwherein said remote processing system determines said altitude andcalculates said position using said altitude.
 18. A computer readablemedium as in claim 12 wherein said method further comprises:transmittingsaid altitude to said mobile SPS receiver, and wherein said mobile SPSreceiver calculates said position using said altitude.
 19. A computerreadable medium as in claim 12 wherein said method furthercomprises:transmitting said cell object information to said mobile SPSreceiver, and wherein said mobile SPS receiver determines said altitude.20. A computer readable medium as in claim 17 wherein said methodfurther comprises:receiving, at said remote processing system, satelliteephemeris data.
 21. A data processing station comprising:a processor; astorage device coupled to said processor; a transceiver coupled to saidprocessor, said transceiver for coupling said data processing station toa wireless cell site, said storage device storing a cell objectinformation which comprises at least one of a cell object location or acell object identification for said wireless cell site, wherein saidprocessor determines an altitude from said cell object information whichis selected based upon said wireless cell site being in wirelesscommunication with a cell based communication receiver of a mobilesatellite positioning system (SPS) receiver and wherein said processorcalculates a position of said mobile SPS receiver using said altitude.22. A data processing station as in claim 21 wherein said processorreceives a source of SPS signals and said transceiver receives at leastone pseudorange from said wireless cell site and wherein said processoruses said SPS signals and said at least one pseudorange to determinesaid position.
 23. A data processing station as in claim 22 wherein saidstorage device stores a database containing a cell object informationand a corresponding altitude for each of a plurality of wireless cellsites which are coupled to said transceiver.
 24. A method fordetermining a position of a mobile satellite positioning system (SPS)receiver, said method comprising:determining a calculated altitude froma plurality of pseudoranges to a plurality of SPS satellites; comparingsaid calculated altitude to an estimate of an altitude of said mobileSPS receiver; determining a condition of at least one of saidpseudoranges, said condition being based on said comparing of saidcalculated altitude to said estimate.
 25. A method as in claim 24wherein said position is determined from a position solution algorithmand wherein if said condition is a first state, said pseudorange is usedin said position solution algorithm.
 26. A method as in claim 25 whereinif said condition is a second state, said pseudorange is not used insaid position solution algorithm.
 27. A method as in claim 26 furthercomprising:determining, at said mobile SPS receiver, said plurality ofpseudoranges; determining a cell object information, said cell objectinformation comprising at least one of a cell object location or a cellobject identification; determining said estimate of said altitude fromsaid cell object information, wherein said cell object information isselected based upon a cell site transmitter which is in wirelesscommunication with a cell based communication system which is coupled tosaid mobile SPS receiver.
 28. A method as in claim 27 wherein saidmobile SPS receiver transmits said plurality of pseudoranges to a dataprocessing station which determines said condition and said position.29. A method as in claim 27 wherein said cell object information isinformation representing at least one of a location or an identificationof said cell site transmitter.
 30. A method as in claim 29 wherein saidaltitude is a mathematical representation of at least one altitude inthe geographical vicinity of said cell site transmitter.
 31. A method asin claim 27 wherein said cell object information and said altitude arestored in a computer readable storage medium.
 32. A method as in claim28 wherein said data processing station receives satellite ephemerisdata.
 33. A data processing station comprising:a processor; a storagedevice coupled to said processor; a transceiver coupled to saidprocessor, said transceiver for coupling said data processing station toa wireless communication system, said storage device storing an estimateof an altitude for at least one area within wireless radio coverage ofsaid wireless communication system, said transceiver receiving aplurality of pseudoranges, including a first pseudorange, from a mobilewireless communication system which is coupled to a mobile satellitepositioning system (SPS) receiver, said processor determining analtitude which is a determined altitude and comparing said estimate tosaid determined altitude and determining a condition of said firstpseudorange, said condition being based on said comparing of saidestimate to said determined altitude.
 34. A data processing system as inclaim 33 wherein said processor receives a source of SPS signals andwherein said processor determines a position of said mobile SPS receiverfrom a position solution algorithm and wherein if said condition is afirst state, said first pseudorange is used in said position solutionalgorithm.
 35. A data processing system as in claim 34 wherein if saidcondition is a second state, said first pseudorange is not used in saidposition solution algorithm.